(0) Obligation:
Runtime Complexity TRS:
The TRS R consists of the following rules:
terms(N) → cons(recip(sqr(N)), n__terms(n__s(N)))
sqr(0) → 0
sqr(s(X)) → s(add(sqr(X), dbl(X)))
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
add(0, X) → X
add(s(X), Y) → s(add(X, Y))
first(0, X) → nil
first(s(X), cons(Y, Z)) → cons(Y, n__first(X, activate(Z)))
terms(X) → n__terms(X)
s(X) → n__s(X)
first(X1, X2) → n__first(X1, X2)
activate(n__terms(X)) → terms(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__first(X1, X2)) → first(activate(X1), activate(X2))
activate(X) → X
Rewrite Strategy: FULL
(1) DecreasingLoopProof (EQUIVALENT transformation)
The following loop(s) give(s) rise to the lower bound Ω(2n):
The rewrite sequence
activate(n__terms(X)) →+ cons(recip(sqr(activate(X))), n__terms(n__s(activate(X))))
gives rise to a decreasing loop by considering the right hand sides subterm at position [0,0,0].
The pumping substitution is [X / n__terms(X)].
The result substitution is [ ].
The rewrite sequence
activate(n__terms(X)) →+ cons(recip(sqr(activate(X))), n__terms(n__s(activate(X))))
gives rise to a decreasing loop by considering the right hand sides subterm at position [1,0,0].
The pumping substitution is [X / n__terms(X)].
The result substitution is [ ].
(2) BOUNDS(2^n, INF)